package com.dong;

import redis.clients.jedis.Jedis;

import java.util.concurrent.TimeUnit;

public class TestString {
    public static void main(String[] args) {
        Jedis jedis = new Jedis("127.0.0.1", 6379);
        jedis.flushDB();
        System.out.println("=============增加数据=============");
        System.out.println(jedis.set("key1","v1"));
        System.out.println(jedis.set("key2","v2"));
        System.out.println(jedis.set("key3","v3"));
        System.out.println("删除键key2:"+jedis.del("key2"));
        System.out.println("获取键key2:"+ jedis.get("key2"));
        System.out.println("修改key1:"+jedis.set("key1","vchange"));
        System.out.println("获取键key1:"+jedis.get("key1"));
        System.out.println("在key3后面加入值:"+jedis.append("key3","end"));
        System.out.println("key3的值:"+jedis.get("key3"));
        System.out.println("增加多个键值对:"+jedis.mset("key01","v01","key02","v02","key03","v03"));
        System.out.println("获取多个键值对:"+jedis.mget("key01","key02","key03"));
        System.out.println("获取多个键值对:"+jedis.mget("key01","key02","key03"));
        System.out.println("删除多个键值对:"+jedis.del("key01","key02"));
        System.out.println("获取多个键值对:"+jedis.mget("key01","key02","key03"));
        jedis.flushDB();
        System.out.println("==========新增键值对防止覆盖原先值=========");
        System.out.println(jedis.setnx("key1","v1"));
        System.out.println(jedis.setnx("key2","v2"));
        System.out.println(jedis.setnx("key2","v2-new"));
        System.out.println(jedis.get("key1"));
        System.out.println(jedis.get("key2"));
        System.out.println("===========新增键值对并设置有效时间=========");
        System.out.println(jedis.setex("key3",2,"v3"));
        System.out.println(jedis.get("key3"));
        try{
            TimeUnit.SECONDS.sleep(3);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println(jedis.get("key3"));
        System.out.println("======获取原值，更新为新值=======");
        System.out.println(jedis.getSet("key2","key2getset"));
        System.out.println(jedis.get("key2"));
        System.out.println("获得key2的值的字串:"+jedis.getrange("key2",2,4));


    }
}
